[AJUDA] If Else dando problema [RESOLVIDO]

1. [AJUDA] If Else dando problema [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 29/03/2012 - 22:09h

#include <stdio.h>

int main(){
float tempo, salario, bonus, novo_salario;

printf ("A empresa XKW Ltda está concedendo um bonus de 20%% do salário a todos os funcionários com tempo\n");
printf ("de trabalho na empresa igual ou superior a cinco anos e de dez por cento aos demais.\n\n");

printf ("Por favor, entre com a quantidade de tempo que você trabalha na empresa: \n");
printf ("Exemplo: 12 Anos Digite 12\n");
scanf ("%f",&tempo);

if (tempo < 5){
printf ("\nAgora, entre com o seu salário atual: ");
scanf ("%f",&salario);
bonus = 0.2 * salario;
novo_salario = bonus + salario;
printf ("Seu Bonus de salário será de R$ %.2f, seu salário esse mês será R$ %.2f\n",bonus, novo_salario);
}

if (tempo >= 5){
printf ("\nAgora, entre com seu salário atual: ");
scanf ("%f",&salario);
bonus = 0.2 * salario;
novo_salario = bonus + salario;
printf ("Seu Bonus de salário será de R$ %.2f, seu salário esse mês será R$ %.2f\n",bonus, novo_salario);
}

else {
printf ("\nVocê entrou com um valor de tempo inválido.\n");
}

return 0;
}


Pessoal, esse meu programa, quando eu coloco a opção 2, ele funciona normal, mas se eu coloco a opção acima de 5, ele vai o if de >= 5 e vai o printf de else tambem, gostaria de saber oque estou fazendo de errado e como posso consertar..


  


2. Re: [AJUDA] If Else dando problema [RESOLVIDO]

Luis R. C. Silva
luisrcs

(usa Linux Mint)

Enviado em 29/03/2012 - 22:36h

Isso é obvio, você tem que colocar else if na segunda condição.


3. Re: [AJUDA] If Else dando problema [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 29/03/2012 - 22:38h

Não estou entendendo pq vc está tratando 3 respostas se somente duas são possíveis:

"if (tempo < 5)" e "if (tempo >= 5)"

Me diga: que resposta poderia ser possível a ser tratada pelo seu "else"? Ou é menor de 5 ou é maior ou igual a 5. Troque o "if (tempo >= 5)" por else e elimine o else inútil nesse caso.



4. Re: [AJUDA] If Else dando problema [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 29/03/2012 - 22:40h

Entendi, é por que vi uma video aula dizendo que eu podia trabalhar com vários Ifs, e só no final colocar um else...é simples, ao inves de trabalhar com um else, eu coloco outro if...


5. Re: [AJUDA] If Else dando problema [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 29/03/2012 - 22:41h

ok, mas no exemplo q vc colocou o else é inútil, faça como eu te disse.


6. Re: [AJUDA] If Else dando problema [RESOLVIDO]

Luis R. C. Silva
luisrcs

(usa Linux Mint)

Enviado em 29/03/2012 - 22:44h

Se resolveu, qual foi a solução?


7. Re: [AJUDA] If Else dando problema [RESOLVIDO]

Arthur Lucas
ArthurLucas

(usa Ubuntu)

Enviado em 30/03/2012 - 03:37h

Simples, para o exemplo de tempo <= 5, seu primeiro if se torna verdadeiro, mas seu segundo if falso, sendo assim o programa com um número <=4 sempre cairá no else. Uma boa alternativa é mudar os segundo if para um else if, ou tirar o else e colocar mais um if!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts